package org.jeecg.modules.chg.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @Description: 费用减免
 * @Author: jeecg-boot
 * @Date:   2022-03-26
 * @Version: V1.0
 */
@Data
@TableName("mws_t_chg_derate")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="mws_t_chg_derate对象", description="费用减免")
public class ChgDerate implements Serializable {
    private static final long serialVersionUID = 1L;

	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private java.lang.String id;
    /**欠费记录*/
    @Excel(name = "欠费记录", width = 15)
    @ApiModelProperty(value = "欠费记录")
    private java.lang.String arrearsId;
	/**计费记录*/
	@Excel(name = "计费记录", width = 15)
    @ApiModelProperty(value = "计费记录")
    private java.lang.String expenseId;
	/**计费明细记录*/
	@Excel(name = "计费明细记录", width = 15)
    @ApiModelProperty(value = "计费明细记录")
    private java.lang.String subExpenseId;
	/**收费项目*/
	@Excel(name = "收费项目", width = 15)
    @ApiModelProperty(value = "收费项目")
    private java.lang.String itemCode;
	/**减免前金额*/
	@Excel(name = "减免前金额", width = 15)
    @ApiModelProperty(value = "减免前金额")
    private java.math.BigDecimal oldMoney;
	/**减免金额*/
	@Excel(name = "减免金额", width = 15)
    @ApiModelProperty(value = "减免金额")
    private java.math.BigDecimal money;
	/**减免后金额*/
	@Excel(name = "减免后金额", width = 15)
    @ApiModelProperty(value = "减免后金额")
    private java.math.BigDecimal newMoney;
	/**减免原因*/
	@Excel(name = "减免原因", width = 15, dicCode = "fee_strike_cause")
	@Dict(dicCode = "fee_strike_cause")
    @ApiModelProperty(value = "减免原因")
    private java.lang.String feeStrikeCause;
	/**批准人*/
	@Excel(name = "批准人", width = 15)
    @ApiModelProperty(value = "批准人")
    private java.lang.String responMan;
	/**备注*/
	@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private java.lang.String remark;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
	/**更新时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "更新时间")
    private java.util.Date updateTime;
	/**部门编码*/
    @ApiModelProperty(value = "部门编码")
    private java.lang.String sysOrgCode;
	/**是否删除*/
	@Excel(name = "是否删除", width = 15)
    @ApiModelProperty(value = "是否删除")
    private java.lang.Integer delFlag;
	/**租户网点*/
	@Excel(name = "租户网点", width = 15)
    @ApiModelProperty(value = "租户网点")
    private java.lang.Integer tenantId;

	/**缴费账号*/
	private transient String accCode;
}
